Group message delivery using multicast

ABSTRACT

A device may obtain, for an account associated with a user equipment (UE) that is connected to a network, subscriber profile data that includes a group identifier for a messaging group for UEs that are eligible to utilize a group messaging service. The device may update a data structure to associate the group identifier and a UE identifier for the UE, wherein the data structure also associates the group identifier and other UE identifiers for other UEs of the messaging group. The device may receive, based on being subscribed to the group messaging service, group message data for a group message. The device may select the UE and the one or more other UEs as target recipients of the group message and may provide, using multicast, the contents of the group message to the UE and the one or more other UEs.

BACKGROUND

A message may be transmitted over a network using a data transmissiontechnique. For example, a message may be transmitted over a networkusing a unicast technique, a multicast technique, and/or the like.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1D are diagrams of one or more example implementationsdescribed herein.

FIG. 2 is a diagram of an example environment in which systems and/ormethods described herein may be implemented.

FIG. 3 is a diagram of an example functional architecture of an examplecore network described herein.

FIG. 4 is a diagram of example components of one or more devices of FIG.2 or 3.

FIG. 5 is a flowchart of an example process for group message deliveryusing multicast.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings may identify the same or similar elements.

A network may support a group messaging service that allows a groupmessage to be provided to a set of user equipment (UEs) (e.g., mobiledevices, internet of things (IoT) devices, and/or the like). Forexample, an event may occur which may cause undue hardship toindividuals located in a geographic area impacted by the event (i.e., animpact area). In this case, the group messaging service may be used toprovide a group message to first responders, to provide a group messageto individuals in the impact area of the event, and/or the like.Additionally, or alternatively, the group messaging service may have oneor more other purposes. For example, the group messaging service maypermit an individual to send a group message (e.g., a group shortmessage service (SMS) message) to a group of individuals. To provide afew specific examples, a manager of an organization may use the groupmessaging service to provide a group message to a group of employees, ateacher may use the group messaging service to provide a group messageto a group of students, and/or the like.

In some cases, a group messaging service may be supported by a fourthgeneration (4G) long term evolution (LTE) network. This procedure uses aunicast transmission technique to transmit separate copies of the groupmessage to one or more downstream network devices (e.g., one or moremobility management entities (MMEs)) and eventually to the set of UEs.

However, transmitting separate copies of the group message to one ormore downstream network devices causes latency issues, reduces qualityof service (QoS) in message transmission, increases network traffic andcreates an inefficient solution that is difficult to scale (e.g.,because overhead of network resources is linked to a quantity of UEsreceiving the group message). For example, if a group message is to beprovided to 5,000 UEs, the SCEF may need to generate and/or transmit5,000 individual messages to one or more MMES that serve an areatargeted for the group message, which requires the one or more MMES totransmit the 5,000 individual group messages to the 5,000 UEs (e.g., viaserving base stations). This wastes processing resources, networkresources, and/or memory resources of devices that must generate,transmit, and/or receive thousands of individual messages.

Some implementations described herein provide for a method that allows asingle group message to be provided to an access and mobility managementfunction (AMF) device, such that the AMF device may perform a multicasttransmission technique to provide the group message to a set of UEs. Forexample, a user may interact with an interface of a group messagingservice to create a messaging group. When the user creates the messaginggroup, a group identifier for the messaging group and device identifiersfor a set of UEs that are included in the messaging group may beprovided to a unified data management (UDM) device. This may cause theUDM device to integrate the group identifier into subscriber profiles ofusers associated with the set of UEs.

Additionally, as a UE, of the set of UEs, connects to the network, theAMF device may obtain subscriber profile data for the UE which includesthe group identifier for the messaging group. In this case, the AMFdevice may update a data structure to associate a device identifier forthe UE and the group identifier for the messaging group. Additionally,the AMF device may subscribe to the messaging group by interacting witha network repository function (NRF). One or more additional UEs, of theset of UEs, may connect to the network over time.

Furthermore, when a group message is created, group message data for thegroup message may be generated by a network exposure function (NEF) andprovided to the NRF. This may cause the NRF to provide the group messagedata to the AMF device. The group message data may be provided as asingle message (and not as individual messages that correspond to eachUE). When the AMF device receives the group message data, the AMF devicemay select a UE and the one or more additional UEs as target recipientsfor the group message and may use the multicast transmission techniqueto provide the group message to the UE and to the one or more additionalUEs. Some implementations described herein also provide a 4G solution,as will be described further herein.

By using a connection procedure to determine which UEs are part of themessaging group, and configuring the AMF device to subscribe to the NRFwhen at least one UE, of the set of UEs, is connected to the network,the group message data may be provided to the AMF device as a singlemessage, thereby allowing the AMF device to use a multicast transmissiontechnique to transmit the group message to the UE and to the one or moreadditional UEs. This conserves resources (e.g., processing resources,network resources, memory resources, and/or the like) relative totechniques that must transmit individual group messages to the AMFdevice. Additionally, by implementing a solution that causes the groupmessage data to be transmitted to the AMF device as a single message,the solution is scalable and able to efficiently and effectively servicemessaging groups that include large numbers of UEs. Furthermore, bysignificantly reducing a volume of messages transmitted over thenetwork, more resources are available for other transmissions, therebyreducing overall network latency, improving quality of service (QoS),and/or the like.

FIGS. 1A-1D are diagrams of one or more example implementations 100described herein. Example implementation(s) 100 may include a UE 102-1,a provisioning system 104, a unified data management (UDM) device 106, agroup of user equipment (UEs) 102 (shown as UE 102-1, UE 102-2, andother UEs 102), a base station, an access and mobility managementfunction (AMF) device 110-1, a network exposure function (NEF) device112, and a network repository function (NRF) device 114.

As shown in FIGS. 1A-1D, AMF device 110-1 may receive group message datathat includes contents of a group message that is to be provided to aset of UEs 102 and may use a multicast transmission technique to providethe contents of the group message to a subset of the UEs 102 that arepresently connected to a network. As shown, the network may be a fifthgeneration (5G) network, such as a 5G network that uses a service-basedarchitecture (SBA). While one or more implementations described hereinuse a 5G network, it is to be understood that this is provided by way ofexample. In practice, one or more implementations described herein maybe implemented using a different type of network, such as a fourthgeneration (4G) network, a third generation (3G) network, and/or thelike.

As shown in FIG. 1A, and by reference number 116, UE 102-1 may create amessaging group. For example, a user may access UE 102-1 to interactwith an interface of a group messaging service (e.g., a servicesupported by an application or a website) that allows users to createmessaging groups and to create group messages that may be transmitted tomembers of the messaging groups. A messaging group may include a set ofUEs that are members of the messaging group and that are eligible toreceive group messages associated with the messaging group.

To create the messaging group, the user may interact with the interfaceto input a group name, a description of the messaging group, and/or alist of members that are to be included in the messaging group. Themembers may be identified using device identifiers of UEs, profileidentifiers of subscriber profiles associated with the UEs, useridentifiers of individuals (e.g., names of individuals, etc.) that areauthorized users of the subscriber profiles, an enterprise identifierassociated with an enterprise or a group within the enterprise that ispermitted to send group messages, and/or the like. For example, the usermay input specific names or phone numbers of individuals that are to beincluded in the messaging group. Additionally, or alternatively, andprovided as another example, the user may upload a document thatincludes the list of individuals and/or UEs that are to be included inthe messaging group.

The group messaging service may support a number of different types ofmessaging groups. For example, the group messaging service may supportmessaging groups relating to disaster relief (e.g., a messaging groupthat includes first responders in an area impacted by a disaster, amessaging group that includes all individuals in the area impacted bythe disaster, and/or the like), messaging groups for an organization(e.g., a messaging group for employees in a specific department, amessaging group for a specific team or committee, and/or the like),messaging groups for an individual (e.g., a messaging group for ateacher to relay messages to a group of students), a messaging group fora specific set of IoT devices, and/or the like.

When UE 102-1 creates the messaging group, as shown by reference number118, messaging group configuration data may be provided to provisioningsystem 104. For example, when UE 102-1 creates the messaging group, anapplication programming interface (API) or another type of communicationinterface may be used to provide the messaging group configuration datato provisioning system 104. The messaging group configuration data mayinclude the group identifier for the messaging group, the list ofindividuals and/or UEs that are to be included in the messaging group,and/or the like.

As shown by reference number 120, provisioning system 104 may providethe messaging group configuration data to UDM device 106. For example,provisioning system 104 may use an API or another type of communicationinterface to provide the messaging group configuration data to UDMdevice 106. This may allow UDM device 106 to update subscriber profilesbased on the messaging group configuration data, as described below.

As shown by reference number 122, UDM device 106 may update subscriberprofile data for subscriber profiles associated with the set of UEs thatare included in the messaging group. For example, UDM device 106 mayprocess a list of device identifiers included in the messaging groupdata and may use the device identifiers to identify subscriber profilesassociated with the set of UEs. This may allow UDM device 106 to updatea field of the subscriber profiles to store the group identifier for themessaging group that has been created.

To provide a specific example, UDM device 106 may process the messagingconfiguration data to identify a device identifier for a particular UE102. In this example, UDM device 106 may perform a search query tosearch one or more data structures to identify a subscriber profile thatcorresponds to the device identifier. This may allow UDM device 106 toupdate a field of the subscriber profile to include the group identifierfor the messaging group.

Additionally, or alternatively, UDM device 106 may associate the groupidentifier with a device identifier for a particular UE 102 that isconnected to and/or part of another network. For example, UDM device 106may receive messaging group configuration data for a particular UE 102that is associated with a different network than the network that UDMdevice 106 is servicing. In this case, UDM device 106 may associate adevice identifier corresponding to the particular UE 102 with the groupidentifier for the messaging group (e.g., by using a data structure tostore the device identifier in association with the group identifier).

In some implementations, UDM device 106 may have to do additionalprocessing to identify a subscriber profile to update. For example, insome cases, rather than provide a list of UEs that are to be included inthe messaging group, UE 102-1 may provide location data for a geographicarea. As a specific example, the messaging group may be for a particulargeographic area that is susceptible to hurricanes, and, rather thaninclude a complete list of UEs within the particular geographic area, UE102-1 may provide coordinates for the geographic area. UDM device 106may use the coordinates to search billing information to identify afirst set of UEs that are linked to subscriber profiles with billing zipcodes that are within the geographic area. This may allow UDM device 106to update the subscriber profiles with the group identifier.

In some implementations (not shown), when the messaging group iscreated, the messaging group may be registered with a resource of thenetwork. For example, when the messaging group is created, an API may beused to provide the group message configuration data to NEF device 112.This may cause NEF device 112 to register the messaging group with NRFdevice 114 (such that AMF devices 110 are able to subscribe to themessaging group, as described further herein).

In this way, subscriber profiles associated with UEs that are includedin the messaging group may be updated to include the group identifier.

As shown in FIGS. 1B and 1C, when UE 102-2 connects to the network, AMFdevice 110-1 may identify that UE 102-2 is part of the messaging groupand may subscribe to messaging group, such that new group messages forthe messaging group are broadcast to AMF device 110-1 (e.g., which maypermit AMF device 110-1 to transmit the new group messages to UE 102-2).

As shown in FIG. 1B, and by reference number 124, UE 102-2 may provide aconnection request to base station 108. For example, UE 102-2 may entera coverage area of base station 108 and may provide a connection requestto base station 108 based on UE 102-2 powering on, returning from anidle state, enabling a network connection feature, moving into range ofbase station 108, and/or a similar type of trigger. The connectionrequest may include device information of UE 102-2, such as a deviceidentifier (e.g., an international mobile equipment identity (IMEI)number, an international mobile subscriber identity (IMSI) number, amobile subscriber mobile station international (MSISDN) number, a uniquedevice identifier (UDID), etc.) and/or other information that may beused to establish a connection with the network.

As shown by reference number 126, base station 108 may provide theconnection request to AMF device 110-1. As shown by reference number128, AMF device 110-1 may provide the connection request to UDM device106 (e.g., via one or more intermediate network devices). For example,AMF device 110-1 may provide the connection request to a sessionmanagement function (SMF) device (not shown), which may provide theconnection request to a policy control function (PCF) device (notshown), which may provide the connection request to UDM device 106.

As shown by reference number 130, UDM device 106 may obtain subscriberprofile data for UE 102-2. For example, UDM device 106 may use thedevice identifier of UE 102-2, which is included in the connectionrequest, to obtain subscriber profile data for a subscriber profileassociated with UE 102-2 and that includes the group identifier for themessaging group. Additionally, UDM device 106 may include the groupidentifier as part of a connection response.

In this way, UDM device 106 obtains subscriber profile data thatincludes the group identifier that indicates that UE 102-2 is includedin the messaging group.

As shown in FIG. 1C, and by reference number 132, UDM device 106 mayprovide, to AMF device 110-1, the connection response that includes thegroup identifier for the messaging group. For example, UDM device 106may provide the connection response to AMF device 110-1 via the one ormore intermediary network devices.

As shown by reference number 134, AMF device 110-1 may associate thedevice identifier for UE 102-2 and the group identifier for themessaging group. For example, AMF device 110-1 may update a datastructure such that the device identifier for UE 102-2 is stored inassociation with the group identifier for the messaging group. Byupdating the data structure, AMF device 110-1 is able to create a localrecord (e.g., which may be kept for a threshold duration after UE102-2's session ends) indicating that UE 102-2 is part of the messaginggroup. The local record may be referenced later and used to select UE102-2 as a target recipient for a particular group message, as describedfurther herein.

As shown by reference number 136, AMF device 110-1 may subscribe to themessaging group. For example, AMF device 110-1 may subscribe to themessaging group by providing, to NRF device 114, a message or aninstruction that indicates that AMF device 110-1 is to receive groupmessages that are distributed as part of the messaging group. Themessage or instruction may include the group identifier, which may allowNRF device 114 to update a list of AMF devices 112 that are to receivegroup messages that are distributed as part of the messaging group.

In some implementations, AMF device 110-1 may subscribe to the messaginggroup when a first UE 102 (e.g., UE 102-2), of the set of UEs 102 thatare included in the messaging group, connects to the network. Forexample, there may be no reason for AMF device 110-1 to subscribe to themessaging group if AMF device 110-1 is not serving at least one UE 102that is included in the messaging group. As such, AMF device 110-1 mayuse the first UE 102 as a trigger to subscribe to the messaging group.Additionally, or alternatively, AMF device 110-1 may subscribe to themessaging group based on another trigger. For example, AMF device 110-1may receive instructions to subscribe to the messaging group fromanother device. In this case, after the messaging group is created, anetwork device (e.g., NEF device 14, NRF device 114, and/or the like)may provide, to AMF device 110-1, instructions to subscribe to themessaging group.

As shown by reference number 138, AMF device 110-1 may provide theconnection response to base station 108. As shown by reference number140, base station 108 may provide the connection response to UE 102-2,which may alert UE 102-2 that a connection to the network has beenestablished.

While the example described herein illustrates UE 102-2 connecting tothe network, it is to be understood that one or more other UEs 102(e.g., that are part of the messaging group) may already be connected tothe network. Additionally, or alternatively, one or more other UEs 102may connect to the network after UE 102-2.

In this way, AMF device 110-1 uses the connection procedure for UE 102-2to identify that UE 102-2 is included in the messaging group.

As shown in FIG. 1D, and by reference number 142, UE 102-1 may provide,to NEF device 112, a request to transmit a group message. For example, auser that has permission to create group messages may interact with aninterface of UE 102-1 to create a request to transmit a group message.The request may be provided to NEF device 112 via a communicationinterface, such as an API that has been created for the group messagingservice or another type of communication interface.

The request may include contents of the group message, the groupidentifier, location data if the group message is to be provided to aspecific geographic area, and/or the like. The contents of the groupmessage, as discussed elsewhere herein, may include information used toalert individuals of an event (e.g., a natural disaster), used toprovide support for disaster relief, used to provide instruction or anotification to a group of employees of an organization, and/or thelike.

As shown by reference number 144, NEF device 112 may identify one ormore AMF devices 112 that are subscribed to the messaging group. Forexample, NEF device 112 may process the request to identify the groupidentifier for the messaging group and may use the group identifier tosearch a data structure for the list of AMF devices 112 that aresubscribed to the messaging group (e.g., which may include AMF device110-1).

As shown by reference number 146, the NEF device 112 may provide groupmessage data to NRF device 114. For example, NEF device 112 may providegroup message data that serves as an indicator that the group messagehas been created and is to be transmitted to the set of UEs 102 that areincluded in the messaging group. The group message data may include thecontents of the group message, the list of AMF devices 112 that aresubscribed to the messaging group (e.g., a list of identifiers for AMFdevices 112), the group identifier, and/or any other data that mayassist in transmitting the group message.

As shown by reference number 148, NRF device 114 may provide the groupmessage data to AMF device 110-1. In some cases, NRF device 114 mayremove the AMF list from the group message data before providing thegroup message data to AMF device 110-1. By providing the group messagedata to AMF device 110-1 via a single message, processing resourcesand/or network resources (e.g., of AMF device 110-1, NEF device 112, NRFdevice 114, etc.) are conserved relative to a solution that mustgenerate, transmit, and/or receive individual group messages for each UE102 that is included in the messaging group.

As shown by reference number 150, AMF device 110-1 may select targetrecipients of the group message. For example, AMF device 110-1 mayselect UE 102-2 and one or more other UEs 102 that are connected to thenetwork via AMF device 110-1. In this case, AMF device 110-1 may processthe group message data to identify the group identifier and may use thegroup identifier to search the data structure for device identifiersthat are stored in association with the group identifier. If a deviceidentifier is stored in association with the group identifier, AMFdevice 110-1 may select a particular UE 102 associated with the deviceidentifier as a target recipient of the group message.

As shown by reference number 152, AMF device 110-1 may perform amulticast transmission technique to transmit the group message to UE102-2 and the one or more other UEs 102 (collectively referred to asrecipient UEs 102). For example, AMF device 110-1 may perform amulticast transmission technique to transmit the group message to aservice area associated with AMF device 110-1 in a manner that isaccessible to the recipient UEs 102.

In some implementations, performing the multicast transmission techniquemay include establishing a multicast session with a recipient UE 102.For example, AMF device 110-1 may provide multicast instructions to therecipient UE 102 that includes an instruction that indicates a time atwhich the multicast session will be available, a location at which therecipient UE 102 may access the multicast session, a location at whichto obtain the group message (e.g., a uniform resource locator (URL) thatindicates where to download the group message), and/or the like. In thiscase, the recipient UE 102 may, based on the multicast instructions,perform one or more actions that permit the recipient UE 102 to obtainthe group message.

Additionally, or alternatively, performing the multicast transmissiontechnique may include providing the group message directly to therecipient UEs 102. In one or more of these implementations, performingthe multicast transmission technique may include encrypting data. Forexample, AMF device 110-1 may encrypt a storage location identifier ofthe multicast instructions that are provided to the recipient UE 102,and the recipient UE 102 may decrypt the storage location identifier todetermine a location at which to download the group message. As anotherexample, AMF device 110-1 may encrypt the group message that is provideddirectly to the recipient UE 102 and the recipient UE 102 may decryptthe group message.

As shown by reference number 154, AMF device 110-1 may provide groupmessage transmission results to NEF device 112. For example, AMF device110-1 may generate group message transmission results that indicate aquantity of UEs 102, of the set of UEs 102 that are included in themessaging group, that received the group message. Additionally, oralternatively, AMF device 110-1 may generate group message transmissionresults that indicate, of a total number (quantity) of transmissions, anumber of successful transmissions of the group message. In someimplementations, AMF device 110-1 may wait a threshold time period andmay generate group message transmission results of transmissions thathave occurred over the threshold time period. In these cases, the groupmessage transmission results may be provided to NEF device 112.

As shown by reference number 156, NEF device 112 may provide the groupmessage transmission results to UE 102-1. As shown by reference number158, UE 102-1 may perform one or more actions based on receiving thegroup message transmission results. For example, UE 102-1 may providethe group message transmission results for display via an interface(e.g., an interface of the application or website supporting the groupmessaging service).

Additionally, or alternatively, and as another example, UE 102-1 maystore the group message transmission results as a record that measuresan effectiveness level of the group message. Additionally, oralternatively, and as another example, UE 102-1 may generate and providefollow-up information to a particular UE 102. For example, if a memberof an organization sends a group message to a set of UEs 102 associatedwith other members in a particular department, the group messagetransmission results may alert the sender that one or more other membersdid not receive the group message. In this case, the sender may interactwith UE 102-1 (or another device) to perform one or more actions thatmake the group message available to the one or more other members viaanother means. For example, the sender may access UE 102-1 to providethe group message to an electronic mail (e-mail) account of the member,to provide the group message to a personal device of the member (whichmay not have been included in the messaging group), and/or the like.

By using the connection procedure to determine which UEs 102 are part ofthe messaging group, and by subscribing to the messaging group via NRFdevice 114, a single message that includes the group message data may beprovided to AMF device 110-1, thereby allowing AMF device 110-1 to use amulticast transmission technique to transmit the group message torecipient UEs 102. This conserves resources (e.g., processing resources,network resources, memory resources, and/or the like) by eliminating aneed to transmit individual group messages for each recipient UE 102 toone or more network devices (e.g., from NEF device 112 to NRF device114, from NRF device 114 to AMF device 110-1, etc.) before providing thegroup message to the recipient UEs 102.

As indicated above, FIGS. 1A-1D are provided as one or more examples.Other examples may differ from what is described with regard to FIGS.1A-1D. For example, there may be additional devices and/or networks,fewer devices and/or networks, different devices and/or networks, ordifferently arranged devices and/or networks than those shown in FIGS.1A-1D. Furthermore, two or more devices shown in FIGS. 1A-1D may beimplemented within a single device, or a single device shown in FIGS.1A-1D may be implemented as multiple and/or distributed devices.Additionally, or alternatively, a set of devices (e.g., one or moredevices) included in the one or more example implementations 100 mayperform one or more functions described as being performed by anotherset of devices included in the one or more example implementations 100.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods described herein may be implemented. As shown in FIG. 2,environment 200 may include a user equipment (UE) 205, a base station210, a mobility management entity (MME) 215, a serving gateway (SGW)220, a packet data network gateway (PGW) 225, a policy and chargingrules function (PCRF) 230, an operations support system/business supportsystems (OSS/BSS) 235, a service capability exposure function (SCEF)240, a home subscriber server (HSS) 245, an authentication,authorization, and accounting server (AAA) 250, a multicast system 255that includes an evolved Multimedia Broadcast/Multicast Service Gateway(eMBMS-GW) 255-1, a Broadcast-Multicast Service Center (BMSC) 255-2,and/or a broadcast video provisioning system (BVPS) 255-3, and/or anetwork 260. Devices of environment 200 may interconnect via wiredconnections, wireless connections, or a combination of wired andwireless connections.

Some implementations are described herein as being performed within a 5Gnetwork for explanatory purposes. In practice, one or more of theseimplementations may be performed within a 4G network, such as a 4G LTEnetwork, as shown in FIG. 2. Additionally, one or more implementationsmay be performed within another type of network (not shown), such as athird generation (3G) network or another type of network.

Environment 200 may include an evolved packet system (EPS) that includesan LTE network and/or an evolved packet core (EPC) that operate based ona third-generation partnership project (3GPP) wireless communicationstandard. The LTE network may include a radio access network (RAN) thatincludes one or more base stations 210 that take the form of evolvedNode Bs (eNBs) via which UE 205 communicates with the EPC. The EPC mayinclude MME 215, SGW 220, and/or PGW 225 that enable UE 205 tocommunicate with network 260 and/or an Internet protocol (IP) multimediasubsystem (IMS) core. The IMS core may include HSS 245 and/or AAA 250,and may manage device registration and authentication, sessioninitiation, etc., associated with UE 205. HSS 245 and/or AAA 250 mayreside in the EPC and/or the IMS core. Additionally, or alternatively,the EPC may include OSS/BSS 235 and/or SCEF 240 to enable UE 205 toaccess one or more group messaging services.

UE 205 includes one or more devices capable of communicating with basestation 210 and/or a network (e.g., network 260, etc.). For example, UE205 may include a wireless communication device, a radiotelephone, apersonal communications system (PCS) terminal (e.g., that may combine acellular radiotelephone with data processing and data communicationscapabilities), a smart phone, a laptop computer, a tablet computer, apersonal gaming system, and/or a similar device. UE 205 may be capableof communicating using uplink (e.g., UE to base station) communications,downlink (e.g., base station to UE) communications, and/or side link(e.g., UE-to-UE) communications. In some implementations, UE 205 mayinclude a machine-type communication (MTC) UE, such as an evolved orenhanced MTC (eMTC) UE. In some implementations, UE 205 may include anInternet of Things (IoT) UE, such as a narrowband IoT (NB-IoT) UE and/orthe like. In some implementations, UE 205 may perform one or moreactions described as being performed by UE 102-1. In someimplementations, a set of UEs 205 (e.g., a set of multiple UEs 205,etc.) may perform one or more actions described as being performed byUEs 102.

Base station 210 includes one or more devices capable of communicatingwith UE 205 using a cellular Radio Access Technology (RAT). For example,base station 210 may include a base transceiver station, a radio basestation, a node B, an evolved node B (eNB), a gNB, a base stationsubsystem, a cellular site, a cellular tower (e.g., a cell phone tower,a mobile phone tower, etc.), an access point, a transmit receive point(TRP), a radio access node, a macrocell base station, a microcell basestation, a picocell base station, a femtocell base station, or a similartype of device. Base station 210 may transfer traffic between UE 205(e.g., using a cellular RAT), other base stations 210 (e.g., using awireless interface or a backhaul interface, such as a wired backhaulinterface), and/or network 260. Base station 210 may provide one or morecells that cover geographic areas. Some base stations 210 may be mobilebase stations. Some base stations 210 may be capable of communicatingusing multiple RATs.

In some implementations, base station 210 may perform scheduling and/orresource management for UEs 205 covered by base station 210 (e.g., UEs205 covered by a cell provided by base station 210). In someimplementations, base stations 210 may be controlled or coordinated by anetwork controller, which may perform load balancing, network-levelconfiguration, and/or the like. The network controller may communicatewith base stations 210 via a wireless or wireline backhaul. In someimplementations, base station 210 may include a network controller, aself-organizing network (SON) module or component, or a similar moduleor component. In other words, a base station 210 may perform networkcontrol, scheduling, and/or network management functions (e.g., forother base stations 210 and/or for uplink, downlink, and/or side linkcommunications of UEs 205 covered by the base station 210). In someimplementations, base station 210 may include a central unit andmultiple distributed units. The central unit may coordinate accesscontrol and communication with regard to the multiple distributed units.The multiple distributed units may provide UEs 205 and/or other basestations 210 with access to network 260. In some implementations, basestation 210 may perform one or more actions described as being performedby base station 108.

MME 215 includes one or more devices, such as one or more serverdevices, capable of receiving, storing, generating, determining, and/orproviding information associated with a group messaging service. In someimplementations, MME 215 may perform operations relating toauthentication of UE 205. Additionally, or alternatively, MME 215 mayfacilitate the selection of a particular SGW 220 and/or a particular PGW225 to serve traffic to and/or from UE 205. MME 215 may performoperations associated with handing off UE 205 from a first base station210 to a second base station 210 when UE 205 is transitioning from afirst cell associated with the first base station 210 to a second cellassociated with the second base station 210. Additionally, oralternatively, MME 215 may select another MME (not pictured), to whichUE 205 should be handed off (e.g., when UE 205 moves out of range of MME215). In some implementations, MME 215 may perform one or more actionsdescribed as being performed by AMF device 112.

SGW 220 includes one or more devices capable of routing packets. Forexample, SGW 220 may include one or more data processing and/or traffictransfer devices, such as a gateway, a router, a modem, a switch, afirewall, a network interface card (MC), a hub, a bridge, a serverdevice, an optical add/drop multiplexer (OADM), or any other type ofdevice that processes and/or transfers traffic. In some implementations,SGW 220 may aggregate traffic received from one or more base stations210 associated with the LTE network and may send the aggregated trafficto network 260 (e.g., via PGW 225) and/or other network devicesassociated with the EPC and/or the IMS core. SGW 220 may also receivetraffic from network 260 and/or other network devices and may send thereceived traffic to UE 205 via base station 210. Additionally, oralternatively, SGW 220 may perform operations associated with handingoff UE 205 to and/or from an LTE network. In some implementations, SGW220 may perform one or more actions described as being performed by asession management function (SMF) device.

PGW 225 includes one or more devices capable of providing connectivityfor UE 205 to external packet data networks (e.g., other than thedepicted EPC and/or LTE network). For example, PGW 225 may include oneor more data processing and/or traffic transfer devices, such as agateway, a router, a modem, a switch, a firewall, a MC, a hub, a bridge,a server device, an OADM, or any other type of device that processesand/or transfers traffic. In some implementations, PGW 225 may aggregatetraffic received from one or more SGWs 220 and may send the aggregatedtraffic to network 260. Additionally, or alternatively, PGW 225 mayreceive traffic from network 260, and may send the traffic to UE 205 viaSGW 220 and base station 210. PGW 225 may record data usage information(e.g., byte usage), and may provide the data usage information to AAA250. In some implementations, PGW 225 may perform one or more actionsdescribed as being performed by the SMF device.

PCRF 230 includes one or more network devices or other types ofcommunication devices. PCRF 230 may store subscriber information, suchas voice call and data rate plans or quotas for subscribers. In somecases, PCRF 230 may store, as part of the subscriber information, aparticular identifier that is used to identify a user as being eligibleto receive expanded data usage permissions. PCRF 230 may provide networkcontrol regarding service data flow detection, gating, Quality ofService (QoS), and/or flow-based charging. Policies and rules regardingQoS may include policies and rules instructing UE 205 and/or networkelements (base station 210, SGW 220, PGW 225, etc.) to minimize packetloss, to implement a packet delay budget, to provide a guaranteed bitrate (GBR), to provide a particular latency, to reduce RF signalcongestion, and/or to perform other activities associated with QoS. PCRF230 may provide policies and rules to other network devices, such asbase station 210, SGW 220, PGW 225, and/or the like, to implementnetwork control. PCRF 230 may determine how a certain service data flowshall be treated and may ensure that subscriber plane traffic mappingand QoS is in accordance with a subscriber's profile and/or networkpolicies. In some implementations, PCRF 230 may perform one or moreactions described herein as being performed by a policy control function(PCF) device.

OSS/BSS 235 includes one or more devices capable of receiving, storing,generating, determining, and/or providing information associated with agroup messaging service. For example, OSS/BSS 235 may include a serverdevice or a group of server devices. In some implementations, OSS/BSS235 may perform one or more actions described herein as being performedby provisioning system 104.

SCEF 240 includes one or more devices receiving, storing, generating,determining, and/or providing information associated with a groupmessaging service. For example, SCEF 240 may include a server device ora group of server devices. In some implementations, SCEF 240 may performone or more actions described herein as being performed by a networkexposure function (NEF) device 112 and/or a network repository function(NRF) device 114.

HSS 245 includes one or more devices, such as one or more serverdevices, capable of managing (e.g., receiving, generating, storing,processing, and/or providing) information associated with UE 205. Forexample, HSS 245 may manage subscription information associated with UE205, such as information that identifies a subscriber profile of a userassociated with UE 205 (e.g., which may include a particular identifierthat identifies a user as eligible for expanded data usage permissions),information that identifies services and/or applications that areaccessible to UE 205, location information associated with UE 205, anetwork identifier (e.g., a network address) that identifies UE 205,information that identifies a treatment of UE 205 (e.g., quality ofservice information, a quantity of minutes allowed per time period, aquantity of data consumption allowed per time period, etc.), and/orsimilar information. HS S 245 may provide this information to one ormore other devices of environment 200 to support the operationsperformed by those devices. In some implementations, HSS 245 may serveas a single, virtual data store with a centralized administration,management, and/or reporting. In some implementations, HSS 245 mayperform one or more actions described herein as being performed by aunified data management (UDM) device 106.

AAA 250 includes one or more devices, such as one or more serverdevices, that perform authentication, authorization, and/or accountingoperations for communication sessions associated with UE 205. Forexample, AAA 250 may perform authentication operations for UE 205 and/ora user of UE 205 (e.g., using one or more credentials), may controlaccess, by UE 205, to a service and/or an application (e.g., based onone or more restrictions, such as time-of-day restrictions, locationrestrictions, single or multiple access restrictions, read/writerestrictions, etc.), may track resources consumed by UE 205 (e.g., aquantity of voice minutes consumed, a quantity of data consumed, etc.),and/or may perform similar operations. In some implementations, AAA 250may perform one or more actions described herein as being performed byUDM device 106.

Multicast system 255 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information associatedwith a multicast service. In some implementations, multicast system 255may include eMBMS-GW 255-1, BMSC 255-2, and/or BVPS 255-3. In someimplementations, multicast system 255 may perform one or more actionsdescribed herein as being performed by access and mobility managementfunction (AMF) device 110-1.

eMBMS-GW 255-1 includes one or more devices capable of routing packetsto a multicast session (e.g., a multicast stream, a multicast downloadsession, etc.). For example, eMBMS-GW 255-1 may include one or more dataprocessing and/or traffic transfer devices, such as a gateway, a router,a modem, a switch, a firewall, a network interface card (MC), a hub, abridge, a server device, an optical add/drop multiplexer (OADM), or anyother type of device that processes and/or transfers traffic. In someimplementations, eMBMS-GW 255-1 may receive traffic from network 260and/or other network devices and may send the received traffic to UE 205via base station 210. In some implementations, eMBMS-GW 255-1 may use amulticast session to transmit a group message or a storage identifier toa location of the group message to a service area.

BMSC 255-2 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information associatedwith a multicast service. For example, BMSC 255-2 may include a serverdevice, a traffic transfer device (e.g., a router, a switch, a hub,etc.), or a similar device. In some implementations, BMSC 255-2 mayallocate bandwidth for providing a multicast service, and/or mayinstruct other devices associated with providing the multicast service.

BVPS 255-3 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information associatedwith providing a multicast service. For example, BVPS 255-3 may includea server device, a traffic transfer device (e.g., a router, a switch, ahub, etc.), or a similar device. In some implementations, BVPS 255-3 mayprovision an eMBMS (e.g., eMBMS-GW 255-1). In some implementations, BVPS255-3 may create multicast services. In some implementations, BVPS 255-3may use multicast session instructions to obtain a group message from acontent server.

Network 260 includes one or more wired and/or wireless networks. Forexample, network 260 may include a cellular network (e.g., a 5G network,a 4G network, such as an LTE network, a 3G network, a code divisionmultiple access (CDMA) network, etc.), a public land mobile network(PLMN), a wireless local area network (e.g., a Wi-Fi network), a localarea network (LAN), a wide area network (WAN), a metropolitan areanetwork (MAN), a telephone network (e.g., the Public Switched TelephoneNetwork (PSTN)), a private network, an ad hoc network, an intranet, theInternet, a fiber optic-based network, a cloud computing network, and/ora combination of these or other types of networks.

The number and arrangement of devices and networks shown in FIG. 2 areprovided as one or more examples. In practice, there may be additionaldevices and/or networks, fewer devices and/or networks, differentdevices and/or networks, or differently arranged devices and/or networksthan those shown in FIG. 2. Furthermore, two or more devices shown inFIG. 2 may be implemented within a single device, or a single deviceshown in FIG. 2 may be implemented as multiple, distributed devices.Additionally, or alternatively, a set of devices (e.g., one or moredevices) of environment 200 may perform one or more functions describedas being performed by another set of devices of environment 200.

FIG. 3 is a diagram of an example functional architecture of a corenetwork 300 in which systems and/or methods described herein may beimplemented. For example, FIG. 3 may show an example architecture of a5G NG core network included in a 5G wireless telecommunications system.In some implementations, the example architecture may be implemented bya core network (e.g., a core network using one or more devices describedin FIG. 2). While the example architecture of shown in FIG. 3 may be anexample of a service-based architecture (SBA), in some implementations,the example architecture may be implemented as a reference-pointarchitecture or another type of architecture.

As shown in FIG. 3, core network 300 may include a number (quantity) offunctional elements. The functional elements may include, for example, anetwork slice selection function (NSSF) 302, a network exposure function(NEF) 304, an authentication server function (AUSF) 306, a unified datamanagement (UDM) 308, a policy control function (PCF) 310, anapplication function (AF) 312, a provisioning system (PS) 314, an accessand mobility management function (AMF) 316, a network repositoryfunction (NRF) 318, a session management function (SMF) 320, a userplane function (UPF) 322, a data network 324, and/or the like. Thesefunctional elements may be communicatively connected via a message bus326. Each of the functional elements shown in FIG. 3 is implemented onone or more devices associated with a wireless telecommunicationssystem. In some implementations, one or more of the functional elementsmay be implemented on physical devices, such as an access point, a basestation, a gateway, and/or the like. In some implementations, one ormore of the functional elements may be implemented on a computing deviceof a cloud computing environment.

NSSF 302 is a hardware-based element that may select network sliceinstances for UEs (and/or may determine network slice policies to beapplied at a RAN). By providing network slicing, NSSF 302 allows anoperator to deploy multiple substantially independent end-to-endnetworks potentially with the same infrastructure. In someimplementations, each slice may be customized for different services.NEF 304 is a hardware-based element that may support the exposure ofcapabilities and/or events in the wireless telecommunications system tohelp other entities in the wireless telecommunications system discovernetwork services. For example, NEF 304 may support the exposure of groupmessages that may be provided via a group messaging service.

AUSF 306 is a hardware-based element that may act as an authenticationserver and support the process of authenticating UEs in the wirelesstelecommunications system. UDM 308 is a hardware-based element that maystore subscriber data and profiles in the wireless telecommunicationssystem. UDM 308 may be used for fixed access, mobile access, and/or thelike, in core network 300. In some implementations, UDM 308 may performone or more actions described herein as being performed by UDM device106. PCF 310 is a hardware-based element that may provide a policyframework that incorporates network slicing, roaming, packet processing,mobility management, and/or the like.

AF 312 is a hardware-based element that may support applicationinfluence on traffic routing, access to NEF 304, policy control, and/orthe like. PS 314 is a hardware-based element that may supportprovisioning of messaging groups that are part of a group messagingservice. AMF 316 is a hardware-based element that may act as atermination point for Non Access Stratum (NAS) signaling, mobilitymanagement, and/or the like. In some implementations, AMF 316 mayperform one or more actions described herein as being performed by AMFdevice 110-1. NRF 318 is a hardware-based element that may interfacewith NEF 304 to provide AMF 316 with group messages. In someimplementations, NRF 318 may perform one or more actions describedherein as being performed by NRF device 114. SMF 320 is a hardware-basedelement that may support the establishment, modification, and release ofcommunications sessions in the wireless telecommunications system. Forexample, SMF 320 may configure traffic steering policies at UPF 322,enforce UE IP address allocation and policies, and/or the like.

UPF 322 is a hardware-based element that may serve as an anchor pointfor intra/inter-Radio Access Technology (RAT) mobility. UPF 322 mayapply rules to packets, such as rules pertaining to packet routing,traffic reporting, handling user plane QoS, and/or the like. Datanetwork 324 may include various types of data networks, such as theInternet, a third party services network, an operator services network,a private network, a wide area network, and/or the like. Message bus 326represents a communication structure for communication among thefunctional elements. In other words, message bus 326 may permitcommunication between two or more functional elements.

The number and arrangement of functional elements shown in FIG. 3 areprovided as an example. In practice, there may be additional functionalelements, fewer functional elements, different functional elements, ordifferently arranged functional elements than those shown in FIG. 3.Furthermore, two or more functional elements shown in FIG. 3 may beimplemented within a single device, or a single functional element shownin FIG. 3 may be implemented as multiple, distributed devices.Additionally, or alternatively, a set of functional elements (e.g., oneor more functional elements) of core network 300 may perform one or morefunctions described as being performed by another set of functionalelements of core network 300.

FIG. 4 is a diagram of example components of a device 400. In someimplementations, device 400 may correspond to UE 205, base station 210,MME 215, SGW 220, PGW 225, PCRF 230, OSS/BSS 235, SCEF 240, HSS 245, AAA250, and/or multicast system 255. In some implementations, UE 205, basestation 210, MME 215, SGW 220, PGW 225, PCRF 230, OSS/BSS 235, SCEF 240,HSS 245, AAA 250, and/or multicast system 255 may include one or moredevices 400 and/or one or more components of device 400. Additionally,or alternatively, device 400 may correspond to NSSF 302, NEF 304, AUSF306, UDM 308, PCF 310, AF 312, PS 314, AMF 316, NRF 318, SMF 320, and/orUPF 322. In some implementations, NSSF 302, NEF 304, AUSF 306, UDM 308,PCF 310, AF 312, PS 314, AMF 316, NRF 318, SMF 320, and/or UPF 322 mayinclude one or more devices 400 and/or components of device 400. Asshown in FIG. 4, device 400 may include a bus 410, a processor 420, amemory 430, a storage component 440, an input component 450, an outputcomponent 460, and a communication interface 470.

Bus 410 includes a component that permits communication among multiplecomponents of device 400. Processor 420 is implemented in hardware,firmware, and/or a combination of hardware and software. Processor 420includes a central processing unit (CPU), a graphics processing unit(GPU), an accelerated processing unit (APU), a microprocessor, amicrocontroller, a digital signal processor (DSP), a field-programmablegate array (FPGA), an application-specific integrated circuit (ASIC),and/or another type of processing component. In some implementations,processor 420 includes one or more processors capable of beingprogrammed to perform a function. Memory 430 includes a random accessmemory (RAM), a read only memory (ROM), and/or another type of dynamicor static storage device (e.g., a flash memory, a magnetic memory,and/or an optical memory) that stores information and/or instructionsfor use by processor 420.

Storage component 440 stores information and/or software related to theoperation and use of device 400. For example, storage component 440 mayinclude a hard disk (e.g., a magnetic disk, an optical disk, and/or amagneto-optic disk), a solid state drive (SSD), a compact disc (CD), adigital versatile disc (DVD), a floppy disk, a cartridge, a magnetictape, and/or another type of non-transitory computer-readable medium,along with a corresponding drive.

Input component 450 includes a component that permits device 400 toreceive information, such as via user input (e.g., a touch screendisplay, a keyboard, a keypad, a mouse, a button, a switch, and/or amicrophone). Additionally, or alternatively, input component 450 mayinclude a component for determining location (e.g., a global positioningsystem (GPS) component) and/or a sensor (e.g., an accelerometer, agyroscope, an actuator, another type of positional or environmentalsensor, and/or the like). Output component 460 includes a component thatprovides output information from device 400 (via, e.g., a display, aspeaker, a haptic feedback component, an audio or visual indicator,and/or the like).

Communication interface 470 includes a transceiver-like component (e.g.,a transceiver, a separate receiver, a separate transmitter, and/or thelike) that enables device 400 to communicate with other devices, such asvia a wired connection, a wireless connection, or a combination of wiredand wireless connections. Communication interface 470 may permit device400 to receive information from another device and/or provideinformation to another device. For example, communication interface 470may include an Ethernet interface, an optical interface, a coaxialinterface, an infrared interface, a radio frequency (RF) interface, auniversal serial bus (USB) interface, a wireless local area networkinterface, a cellular network interface, and/or the like.

Device 400 may perform one or more processes described herein. Device400 may perform these processes based on processor 420 executingsoftware instructions stored by a non-transitory computer-readablemedium, such as memory 430 and/or storage component 440. As used herein,the term “computer-readable medium” refers to a non-transitory memorydevice. A memory device includes memory space within a single physicalstorage device or memory space spread across multiple physical storagedevices.

Software instructions may be read into memory 430 and/or storagecomponent 440 from another computer-readable medium or from anotherdevice via communication interface 470. When executed, softwareinstructions stored in memory 430 and/or storage component 440 may causeprocessor 420 to perform one or more processes described herein.Additionally, or alternatively, hardware circuitry may be used in placeof or in combination with software instructions to perform one or moreprocesses described herein. Thus, implementations described herein arenot limited to any specific combination of hardware circuitry andsoftware.

The number and arrangement of components shown in FIG. 4 are provided asan example. In practice, device 400 may include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 5. Additionally, or alternatively, aset of components (e.g., one or more components) of device 400 mayperform one or more functions described as being performed by anotherset of components of device 400.

FIG. 5 is a flow chart of an example process 500 for group messagedelivery using multicast. In some implementations, one or more processblocks of FIG. 5 may be performed by an access and mobility managementfunction (AMF) device (e.g., AMF 316). In some implementations, one ormore process blocks of FIG. 5 may be performed by another device or agroup of devices separate from or including the AMF device, such as auser equipment (UE) (e.g., UE 205), a base station (e.g., base station210), a provisioning system (PS) (e.g., OSS/BSS 235, PS 314, and/or thelike), and/or one or more network devices (e.g., devices described inconnection with FIG. 2 and/or FIG. 3).

As shown in FIG. 5, process 500 may include obtaining, by a device andfor a user equipment (UE) connected to a network, subscriber profiledata for an account associated with the UE, wherein the subscriberprofile data includes a group identifier for a messaging group (block510). For example, the AMF device (e.g., using processor 420, memory430, storage component 440, input component 350, output component 460,communication interface 470, and/or the like) may obtain, for a UEconnected to a network, subscriber profile data for an accountassociated with the UE, as described above. In some implementations, thesubscriber profile data may include a group identifier for a messaginggroup.

In some implementations, the network may be a fifth generation (5G)network. For example, the network may be a 5G network that uses aservice-based architecture (SBA) framework. In some implementations, thenetwork may be a fourth generation (4G) network, such as a 4G long-termevolution (LTE) network. In this case, a mobility management entity(MME) (e.g., MME 215) may perform one or more actions described as beingperformed by the AMF device.

In some implementations, after obtaining the subscriber profile datathat includes the group identifier, the AMF device may subscribe to thegroup messaging service via a resource that is responsible foradvertising the group messages for the messaging group. For example, theAMF device may interact with a network repository function (NRF) of aresource to subscribe to the messaging group. The AMF device mayinteract with the NRF via an application programming interface (API)that connects to the resource and that is responsible for advertisinggroup messages for the messaging group. In some implementations,subscribing to the messaging group may cause the resource to use the NRFto update an AMF list with an identifier of the AMF device. In someimplementations, as one or more other UEs connect to the network, theAMF device may obtain subscriber profile data for accounts associatedwith the one or more other UEs.

As further shown in FIG. 5, process 500 may include updating, by thedevice, a data structure to associate the group identifier and a UEidentifier for the UE, wherein the data structure also associates thegroup identifier and one or more other UE identifiers for one or moreother UEs that are part of a set of UEs that are eligible for the groupmessaging service (block 520). For example, the AMF device (e.g., usingprocessor 420, memory 430, storage component 440, and/or the like) mayupdate a data structure to associate the group identifier and a UEidentifier for the UE, as described above. In some implementations, thedata structure may also associate the group identifier and one or moreother UE identifiers for one or more other UEs that are part of the setof UEs that are eligible for the group messaging service.

As further shown in FIG. 5, process 500 may include receiving, by thedevice, group message data for a group message that is to be transmittedto the set of UEs that are eligible for the group messaging service,wherein the group message data includes contents of the group messageand the group identifier (block 530). For example, the AMF device (e.g.,using processor 420, memory 430, storage component 440, input component350, communication interface 470, and/or the like) may receive groupmessage data for a group message that is to be transmitted to the set ofUEs that are eligible for the group messaging service, as describedabove. In some implementations, the group message data may be receivedbased on the device being subscribed to the group messaging service.

In some implementations, such as when the network is a 5G network, theAMF device may receive the group message from a PRF device. In someimplementations, such as when the network is a 4G network, an MME(instead of the AMF device) may receive the group message from a servicecapability exposure function (SCEF) device. The SCEF device may havereceived the group message from an application service.

As further shown in FIG. 5, process 500 may include selecting, by thedevice and by using the group identifier to reference the datastructure, the UE and the one or more other UEs as target recipients ofthe group message (block 540). For example, the AMF device (e.g., usingprocessor 420, memory 430, storage component 440, output component 460,communication interface 470, and/or the like) may select, by using thegroup identifier to reference the data structure, the UE and the one ormore other UEs as target recipients of the group message, as describedabove.

As further shown in FIG. 5, process 500 may include providing, by thedevice and by using a multicast transmission technique, the contents ofthe group message to the UE and to the one or more UEs (block 550). Forexample, the AMF device (e.g., using processor 420, memory 430, storagecomponent 440, input component 350, output component 460, communicationinterface 470, and/or the like) may provide, by using a multicasttransmission technique, the contents of the group message to the UE andto the one or more UEs, as described above.

In some implementations, the AMF device may receive another connectionrequest for a particular UE that is to connect to the network. In thiscase, the AMF device may obtain particular subscriber profile data foran account associated with the particular UE, where the particularsubscriber profile data includes the group identifier for the groupmessaging service. Additionally, the AMF device may select theparticular UE as a target recipient for the group message and mayprovide the contents of the group message to the particular UE.

In some implementations, the AMF device may generate, over time,multicast transmission results (e.g., group message transmissionresults) that indicate which of the set of UEs received the groupmessage. In this case, the AMF device may provide the multicasttransmission results for display via an interface.

Although FIG. 5 shows example blocks of process 500, in someimplementations, process 500 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 5. Additionally, or alternatively, two or more of theblocks of process 500 may be performed in parallel.

The foregoing disclosure provides illustration and description but isnot intended to be exhaustive or to limit the implementations to theprecise form disclosed. Modifications and variations may be made inlight of the above disclosure or may be acquired from practice of theimplementations.

As used herein, the term “component” is intended to be broadly construedas hardware, firmware, or a combination of hardware and software.

Some implementations are described herein in connection with thresholds.As used herein, satisfying a threshold may, depending on the context,refer to a value being greater than the threshold, more than thethreshold, higher than the threshold, greater than or equal to thethreshold, less than the threshold, fewer than the threshold, lower thanthe threshold, less than or equal to the threshold, equal to thethreshold, etc., depending on the context.

Certain user interfaces have been described herein and/or shown in thefigures. A user interface may include a graphical user interface, anon-graphical user interface, a text-based user interface, and/or thelike. A user interface may provide information for display. In someimplementations, a user may interact with the information, such as byproviding input via an input component of a device that provides theuser interface for display. In some implementations, a user interfacemay be configurable by a device and/or a user (e.g., a user may changethe size of the user interface, information provided via the userinterface, a position of information provided via the user interface,etc.). Additionally, or alternatively, a user interface may bepre-configured to a standard configuration, a specific configurationbased on a type of device on which the user interface is displayed,and/or a set of configurations based on capabilities and/orspecifications associated with a device on which the user interface isdisplayed.

To the extent the aforementioned implementations collect, store, oremploy personal information of individuals, it should be understood thatsuch information shall be used in accordance with all applicable lawsconcerning protection of personal information. Additionally, thecollection, storage, and use of such information may be subject toconsent of the individual to such activity, for example, through wellknown “opt-in” or “opt-out” processes as may be appropriate for thesituation and type of information. Storage and use of personalinformation may be in an appropriately secure manner reflective of thetype of information, for example, through various encryption andanonymization techniques for particularly sensitive information.

It will be apparent that systems and/or methods described herein may beimplemented in different forms of hardware, firmware, and/or acombination of hardware and software. The actual specialized controlhardware or software code used to implement these systems and/or methodsis not limiting of the implementations. Thus, the operation and behaviorof the systems and/or methods are described herein without reference tospecific software code—it being understood that software and hardwaremay be used to implement the systems and/or methods based on thedescription herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of various implementations. In fact,many of these features may be combined in ways not specifically recitedin the claims and/or disclosed in the specification. Although eachdependent claim listed below may directly depend on only one claim, thedisclosure of various implementations includes each dependent claim incombination with every other claim in the claim set.

No element, act, or instruction used herein should be construed ascritical or essential unless explicitly described as such. Also, as usedherein, the articles “a” and “an” are intended to include one or moreitems, and may be used interchangeably with “one or more.” Furthermore,as used herein, the term “set” is intended to include one or more items(e.g., related items, unrelated items, a combination of related andunrelated items, etc.), and may be used interchangeably with “one ormore.” Where only one item is intended, the phrase “only one” or similarlanguage is used. Also, as used herein, the terms “has,” “have,”“having,” or the like are intended to be open-ended terms. Further, thephrase “based on” is intended to mean “based, at least in part, on”unless explicitly stated otherwise.

1. A method, comprising: obtaining, by a device and for a user equipment(UE) connected to a network, subscriber profile data for an accountassociated with the UE, wherein the subscriber profile data includes agroup identifier for a messaging group, wherein the messaging group iscreated by a user associated with the user equipment, wherein thesubscriber profile data is obtained from a unified data management (UDM)device based on a connection request, and wherein the device includes anaccess and mobility management function (AMF); updating, by the device,a data structure to associate the group identifier and a UE identifierfor the UE, wherein the data structure also associates the groupidentifier and one or more other UE identifiers that are part of a setof UEs that are eligible for a group messaging service; receiving, bythe device and for a group message that is to be transmitted to the setof UEs, group message data includes: contents of the group message, andthe group identifier, wherein the group message data is received from anetwork repository function (NRF) of a resource responsible foradvertising group messages for the messaging group; selecting, by thedevice and by using the group identifier to reference the datastructure, the UE and one or more other UEs, of the set of UEs, astarget recipients of the group message; providing, by the device and byusing a multicast transmission technique, the contents of the groupmessage to the UE and to the one or more other UEs; generating, by thedevice, multicast transmission results that indicate which of the set ofUEs received the group message; and providing, by the device, themulticast transmission results for display via an interface.
 2. Themethod of claim 1, further comprising: subscribing, by the device andafter obtaining the subscriber profile data that includes the groupidentifier for the messaging group, to the group messaging service toallow the resource to transmit the group messages to the device; andwherein receiving the group message data comprises: receiving the groupmessage data from the resource.
 3. The method of claim 1, wherein thenetwork uses a service-based architecture (SBA).
 4. The method of claim1, wherein the group message data is received via an applicationprogramming interface (API) created for the group messaging service. 5.The method of claim 1, wherein receiving the group message datacomprises: receiving the group message data from a service capabilityexposure function (SCEF).
 6. The method of claim 1, further comprising:receiving another connection request for a particular UE that is toconnect to the network; obtaining particular subscriber profile data fora particular account associated with the particular UE, wherein theparticular subscriber profile data includes the group identifier for thegroup messaging service; selecting the particular UE as a targetrecipient for the group message based on the particular subscriberprofile data including the group identifier; and providing the contentsof the group message to the particular UE.
 7. (canceled)
 8. A device,comprising: one or more memories; and one or more processors,operatively coupled to the one or more memories, to: obtain subscriberprofile data for accounts associated with a set of UEs, wherein thesubscriber profile data for multiple UEs, of the set of UEs, include agroup identifier for a messaging group, wherein the messaging group iscreated by a user associated with the user equipment of the set of UEs,wherein the subscriber profile data is obtained from a unified datamanagement (UDM) device based on a connection request, and wherein thedevice includes an access and mobility management function (AMF); updatea data structure to associate the group identifier and UE identifiersfor the multiple UEs; receive, from a resource that is responsible foradvertising group messages for the messaging group, group message datafor a group message that is to be transmitted to a second set of UEsthat are eligible for a group messaging service, wherein the groupmessage data includes at least one of: contents of the group message,device identifiers for the second set of UEs, or the group identifier,and wherein the group message data is received from a network repositoryfunction (NRF) of the resource; select, by using the group identifier toreference the data structure, the multiple UEs as target recipients ofthe group message; provide, by using a multicast transmission technique,the contents of the group message to the multiple UEs; generatemulticast transmission results that indicate which of the set of UEsreceived the group message; and provide the multicast transmissionresults for display via an interface.
 9. The device of claim 8, whereinthe one or more processors are further to: subscribe, after obtainingthe subscriber profile data for the set of UEs, to the group messagingservice, via an application programming interface (API) that connects tothe resource that is responsible for advertising group messages for themessaging group; and wherein the one or more processors, when receivingthe group message data, are to: receive the group message data from theresource via the API.
 10. (canceled)
 11. The device of claim 8, whereinthe device includes a mobility management entity (MME); and wherein theone or more processors, when receiving the group message data, are to:receive the group message data from a service capability exposurefunction (SCEF) of the resource.
 12. The device of claim 8, wherein thegroup message data is received via an application programming interface(API) created for the group messaging service.
 13. The device of claim8, wherein the one or more processors are further to: receive aconnection request for a particular UE that is to connect to a network;obtain particular subscriber profile data for a particular accountassociated with the particular UE, wherein the particular subscriberprofile data includes the group identifier for the messaging group;select the particular UE as a target recipient for the group messagebased on the particular subscriber profile data including the groupidentifier; and provide the contents of the group message to theparticular UE.
 14. (canceled)
 15. A non-transitory computer-readablemedium storing instructions, the instructions comprising: one or moreinstructions that, when executed by one or more processors, cause theone or more processors to: obtain subscriber profile data for an accountassociated with a user equipment (UE) that is connected to a network,wherein the subscriber profile data includes a group identifier for amessaging group that includes a set of UEs that are eligible to receivegroup messages as part of a group messaging service, wherein themessaging group is created by a user associated with the user equipment,wherein the subscriber profile data is obtained from a unified datamanagement (UDM) device based on a connection request, and wherein thedevice includes an access and mobility management function (AMF);subscribe, after obtaining the subscriber profile data for the UE, tothe group messaging service, by interacting with a resource that isresponsible for advertising the group messages for the messaging group;update a data structure to associate the group identifier and a UEidentifier for the UE; wherein the data structure is to be used toassociate the group identifier and one or more other UE identifiers forone or more other UEs that connect to the network and that are part ofthe set of UEs that are eligible for the group messaging service;receive group message data for a group message that is to be transmittedto the set of UEs that are included in the messaging group, wherein thegroup message data includes at least one of: contents of the groupmessage, device identifiers for the set of UEs, or the group identifier,and wherein the group message data is received from a network repositoryfunction (NRF) of the resource; select, by using the group identifier toreference the data structure, the UE and particular UEs that haveconnected to the network and that are part of the one or more other UEsthat are eligible for the group messaging service; provide, by using amulticast transmission technique, the contents of the group message tothe UE and to the particular UEs; generate multicast transmissionresults that indicate which of the set of UEs received the groupmessage; and provide the multicast transmission results for display viaan interface.
 16. The non-transitory computer-readable medium of claim15, wherein the group message data is received from a network exposurefunction (NEF).
 17. The non-transitory computer-readable medium of claim15, wherein the one or more instructions, that cause the one or moreprocessors to receive the group message data, cause the one or moreprocessors to: receive the group message data from a service capabilityexposure function (SCEF), which received the group message data from anapplication service.
 18. The non-transitory computer-readable medium ofclaim 15, wherein the one or more instructions, further cause the one ormore processors to: receive a connection request for another UE that isto connect to the network; obtain particular subscriber profile data fora particular account associated with the other UE, wherein theparticular subscriber profile data includes the group identifier for thegroup messaging service; select the other UE as a target recipient forthe group message based on the particular subscriber profile dataincluding the group identifier; and provide the contents of the groupmessage to the other UE.
 19. The non-transitory computer-readable mediumof claim 15, wherein the group message data is received via anapplication programming interface (API) created for the group messagingservice.
 20. The non-transitory computer-readable medium of claim 15,wherein the one or more instructions, that cause the one or moreprocessors to select to the UE and the particular UEs, cause the one ormore processors to: use the UE identifier for the UE and particular UEidentifiers for the particular UEs to search the data structure todetermine that a corresponding UE identifier and correspondingparticular UE identifiers are stored in association with the groupidentifier, and select the UE and the particular UEs based ondetermining that the corresponding UE identifier and correspondingparticular UE identifiers are stored in association with the groupidentifier.
 21. The device of claim 8, wherein the network uses aservice-based architecture (SBA).
 22. The method of claim 1, whereingenerating the multicast transmission results comprises generating themulticast transmission results that have occurred over a threshold timeperiod.
 23. The device of claim 8, wherein the one or more processors,when generating the multicast transmission results, are to: generate themulticast transmission results that have occurred over a threshold timeperiod.